package lc.二分;

/**
 * @description: 寻找峰值
 * @author: qian
 * @createDate: 2021/9/15
 */
public class Math162 {

    public int findPeakElement(int[] nums) {

        /*
        * 爬山（没错，就是带你去爬山），
        * 如果你往下坡方向走，
        * 也许可能遇到新的山峰，
        * 但是也许是一个一直下降的坡，
        * 最后到边界。但是如果你往上坡方向走，
        * 就算最后一直上的边界，由于最边界是负无穷，
        * 所以就一定能找到山峰，总的一句话，往递增的方向上，
        * lc.二分，一定能找到，往递减的方向只是可能找到，也许没有。
        *
        * */
        int left = 0;
        int right = nums.length - 1;
        while (left < right ) {
            int mid = left + (right - left)/2;
            if(nums[mid] < nums[mid + 1]) {
                left = mid + 1;
            } else {
                right = mid;
            }

        }
        return left;

    }
}
